﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace bitzhuwei.SharpGLController
{
    internal class LookAtParam
    {
        public LookAtParam(double eyex, double eyey, double eyez,
            double centerx, double centery, double centerz,
            double upx, double upy, double upz)
        {
            this.eye = new TriTuple(eyex, eyey, eyez);
            this.center = new TriTuple(centerx, centery, centerz);
            this.up = new TriTuple(upx, upy, upz);
        }
        public LookAtParam(decimal eyex, decimal eyey, decimal eyez,
            decimal centerx, decimal centery, decimal centerz,
            decimal upx, decimal upy, decimal upz)
        {
            this.eye = new TriTuple((double)eyex, (double)eyey, (double)eyez);
            this.center = new TriTuple((double)centerx, (double)centery, (double)centerz);
            this.up = new TriTuple((double)upx, (double)upy, (double)upz);
        }
        public LookAtParam(float eyex, float eyey, float eyez,
            float centerx, float centery, float centerz,
            float upx, float upy, float upz)
        {
            this.eye = new TriTuple((double)eyex, (double)eyey, (double)eyez);
            this.center = new TriTuple((double)centerx, (double)centery, (double)centerz);
            this.up = new TriTuple((double)upx, (double)upy, (double)upz);
        }

        public TriTuple eye;
        public TriTuple center;
        public TriTuple up;

        //public double eyeX;
        //public double eyeY;
        //public double eyeZ;

        //public double centerX;
        //public double centerY;
        //public double centerZ;

        //public double upX;
        //public double upY;
        //public double upZ;

        public override string ToString()
        {
            return string.Format("eye:{0},{1},{2},center:{3},{4},{5},up:{6},{7},{8}"
                , eye, center, up);
            //return base.ToString();
        }
    }
}
